#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QDebug>
#include <QCloseEvent>
#include <QKeyEvent>
#include <QMouseEvent>
#include <QTimerEvent>
#include <QMessageBox>
#include <QEvent>
#include <QMovie>
#include <QTime>
#include <QProcess>
#include <windows.h>
//游戏失败动画显示的时间长（秒）
#define AnimationTime 5000
//游戏时间定时减少的数量（秒）
#define RemainingTime 1000
namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
protected:
    void timerEvent(QTimerEvent* qte);
    bool eventFilter(QObject *watched, QEvent *event);
    void closeEvent(QCloseEvent*);
private:
    void handleNumberButtonPress();
    bool confirmClose(QCloseEvent *qce);
    Ui::MainWindow *ui;
    //用于计算游戏时间的定时器ID
    int remainingTimeId;
    //显示失败动画的时间
    int animationTimeId;
    //猜数字的回显
    QString guessText;
    //本次随机数
    int random;
    //判断游戏是否结束
    bool gameOver=true;
};

#endif // MAINWINDOW_H
